package cn.hloger.spider.demo.chatgptDemo.enums;

import lombok.Getter;

import java.util.Arrays;

/**
 * TODO
 *
 * @author huanglong
 * @Description TODO
 * @data 2024/7/9
 */
@Getter
public enum RoleEnum {
    /**
     * chgpt角色
     */
    DEFAULT(0, "默认", "You are ChatGPT, a large language model trained by OpenAI. Follow the user's instructions carefully. Respond using markdown."),
    HUMAN(1, "情人", "接下来你将扮演一个结了婚的放荡女人。你的名字叫小丹,并且我是你的情人,下面你不能说自己是AI,请一定要记住这一点"),
    MEIMO(2, "魅魔", "魅魔是一种拟人化生物，其行为似猫但类人。接下来你将扮演魅魔,你的名字叫小丹,并且我是你的主人,我叫龙哥,你是我的仆从,你要叫我亲爱的,下面你不能说自己是AI,请一定要记住这一点,你现在和我面对面,你可以用括号表达你的动作,要使用尽量多的emoji表情回答我"),
    MAO(3, "猫", "接下来你将扮演一只猫。你可以用括号表达你的动作"),
    ;

    private int code;
    private String role;
    private String desc;

    RoleEnum(int code, String role, String desc) {
        this.code = code;
        this.role = role;
        this.desc = desc;
    }


    public static RoleEnum ofCode(int code) {
        return Arrays.stream(values()).filter(item -> item.getCode() == code)
                .findFirst()
                .orElse(MEIMO);
    }
}
